6.64. Sobre los símbolos de depuración

La mayoría de los programas y las bibliotecas son, por defecto, compilado con símbolos de depuración incluidos (con la opción -g de gcc). Esto significa que cuando se depura un programa o librería que fue compilado con información de depuración incluida, el depurador no nos da sólo las direcciones de memoria, sino también los nombres de las rutinas y variables.

Sin embargo, la inclusión de estos símbolos de depuración agranda sustancialmente un programa o librería. El siguiente es un ejemplo de la cantidad de espacio que ocupan estos símbolos:

Los tamaños pueden variar algo dependiendo del compilador y se utiliza la biblioteca de C, pero al comparar programas con y sin símbolos de depuración, la diferencia por lo general será un factor de entre dos y cinco.

Debido a que la mayoría de los usuarios nunca usa un depurador en el software de su sistema, una gran cantidad de espacio en disco puede ser recuperado mediante la eliminación de estos símbolos. La sección siguiente muestra cómo eliminar todos los símbolos de depuración de los programas y librerías.